package com.cadothy.remotecamera.util

import android.content.Context
import android.util.Log
import java.io.File

/**
 * 缓存文件夹工具类
 */
class CacheFileUtil {
    /**
     * 清空缓存文件
     */
    fun cleanupTempFiles(context: Context) {
        val cacheDir = context.cacheDir // 获取应用的缓存目录
        val currentMillis = System.currentTimeMillis()

        // 遍历缓存目录下的文件
        cacheDir.listFiles()?.forEach { file ->
            Log.d("Fire", "cleanupTempFiles: ${file.absolutePath}")
            if (file.isFile  && isOldFile(currentMillis, file.lastModified())) {
                file.delete() // 删除过期的临时文件
            }
        }
    }

    fun isTempFile(file: File): Boolean {
        // 可以通过文件名或者其他标识来判断是否为应用临时文件
        return file.name.startsWith("temp_")
    }

    fun isOldFile(currentMillis: Long, fileModifiedMillis: Long): Boolean {
        // 设置一个时间阈值，比如一天前的文件需要清理
//        val thresholdMillis =  1000 // 7*1 day in milliseconds
        val thresholdMillis = 3*24 * 60 * 60 * 1000 // 3*1 day in milliseconds
        return currentMillis - fileModifiedMillis > thresholdMillis
    }
}